Embora visualizemos os dados como grades 2D por conveniência matemática, o hardware vê apenas um fluxo contíguo de 1D de bytes. Compreender esta "realidade linear" é pré-requisito para implementar padrões de redução por linha padrões de redução—como encontrar o valor máximo ou a soma dos expoentes.
1. O Princípio da "Achatamento Linear"
Todo tensor multidimensional é fisicamente armazenado sequencialmente. Para implementar $\text{softmax}(x_i) = \frac{e^{x_i}}{\sum_j e^{x_j}}$, devemos identificar o segmento linear que representa uma linha e realizar percorridos para calcular o máximo e a soma.
2. Estabilidade Numérica
Por que o softmax precisa de estabilização? Valores de entrada altos fazem $e^{x}$ explodir. Estabilizamos por meio de: $$\text{exp}(x_i - \text{max}(x))$$ Isso obriga o projetista do kernel a realizar uma redução linear em duas passagens (máximo depois soma) antes da normalização final.
3. Verificação por Linhas Curtas
Ao desenvolver kernels Triton, usamos testes apenas com linhas curtas (por exemplo, largura 16) para garantir que nossa aritmética de ponteiros lineares capture corretamente todos os elementos antes de escalar para cargas de trabalho de produção.